Application of Category-Theory Methods to the Design of a System of Modules for a Functional Programming Language

نویسندگان

  • Mikołaj Konarski
  • Andrzej Tarlecki
چکیده

Module systems embed elements of methodologies, formalisms and tools for programming-in-the-large into programming languages. In our thesis we design a module system, its categorical model and a constructive semantics of the system in the model. The categorical model is simple and general, built using elementary categorical notions, admitting many variants and extensions of the module system. Our module system features programming mechanisms inspired by category theory and enables fine-grained modular programming, as witnessed by the case studies presented. We show how to extend our categorical model with data types expressible as adjunctions, as well as with (co)inductive constructions and with fully parameterized exponents. We analyze and compare alternative axiomatizations of the extensions and demonstrate a series of properties concerning rewriting of terms denoting morphisms of 2-categories; in particular, the terms expressing general adjunctions. On the basis of the extended model and without introducing recursive types we define the mechanism of mutual dependency among modules, in the form of (co)inductive module construction. The extended module system contains the essential mechanisms of modular programming, such as type sharing, transparent as well as non-transparent functor application and grouping of related modules. Conventional modular idioms are expressible in new, original ways, enabling modular programming with no headers, no explicit module applications and no global modular errors.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Mapping Activity Diagram to Petri Net: Application of Markov Theory for Analyzing Non-Functional Parameters

The quality of an architectural design of a software system has a great influence on achieving non-functional requirements of a system. A regular software development project is often influenced by non-functional factors such as the customers' expectations about the performance and reliability of the software as well as the reduction of underlying risks. The evaluation of non-functional paramet...

متن کامل

OPTIMAL DESIGN OF SINGLE-LAYER BARREL VAULT FRAMES USING IMPROVED MAGNETIC CHARGED SYSTEM SEARCH

The objective of this paper is to present an optimal design for single-layer barrel vault frames via improved magnetic charged system search (IMCSS) and open application programming interface (OAPI). The IMCSS algorithm is utilized as the optimization algorithm and the OAPI is used as an interface tool between analysis software and the programming language. In the proposed algorithm, magnetic c...

متن کامل

دانش، بینش و مدیریت

Model building is one of the most important characteristics of human beings. According to a classification, there are three kinds of models. The first type are omdels which are unique to every individual person and every body has his own models. Another kind of models are those which are general. Theories arise from this kind of models. The third kind are modols for model building and deals wit...

متن کامل

Solving System of Linear Congruence Equations over some Rings by Decompositions of Modules

In this paper, we deal with solving systems of linear congruences over commutative CF-rings. More precisely, let R be a CF-ring (every finitely generated direct sum of cyclic R-modules has a canonical form) and let I_1,..., I_n be n ideals of R. We introduce congruence matrices theory techniques and exploit its application to solve the above system. Further, we investigate the application of co...

متن کامل

A Generalization of M-Small Modules

In this paper we introduce a generalization of M-small modules and discuss about the torsion theory cogenerated by this kind of modules in category . We will use the structure of the radical of a module in  and get some suitable results about this class of modules. Also the relation between injective hull in  and this kind of modules will be investigated in this article.   For a module  we show...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006